//
//  YMIMUIConfig.h
//  YMIM
//
//  Created by reyzhang on 2022/3/21.
//

#import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>

NS_ASSUME_NONNULL_BEGIN

/*!
 头像显示的形状
 */
typedef NS_ENUM(NSInteger, YMUserAvatarStyle) {
    USER_AVATAR_RECTANGLE = 0, //矩形
    USER_AVATAR_CYCLE, //圆形
};


/**
 角标显示的位置
 */
typedef NS_ENUM(NSInteger,YMBadgeViewPosition) {
    BADGE_POSITION_ON_LEFT = 0, // 角标显示在左边，头像上，像微信
    BADGE_POSITION_ON_RIGHT,  //角标显示在右边， 像QQ
};




@interface YMIMUIConfig : NSObject


/**
 * 会话列表界面中显示的头像大小，高度必须大于或者等于36
 * 默认值为46*46
 */
@property (nonatomic, assign) CGSize globalConversationPortraitSize;

/**
 * 会话列表界面中显示的头像形状，矩形 or 圆形
 * 默认值为矩形，即USER_AVATAR_RECTANGLE
 */
@property (nonatomic, assign) YMUserAvatarStyle globalConversationAvatarStyle;



/**
 * 会话页面中显示的头像大小
 * 默认值为40*40
 */
@property (nonatomic, assign) CGSize globalMessagePortraitSize;



/**
 * 会话页面中显示的头像形状，矩形 or 圆形
 * 默认值为矩形，即USER_AVATAR_RECTANGLE
 */
@property (nonatomic, assign) YMUserAvatarStyle globalMessageAvatarStyle;


/**
 * 会话列表界面和会话页面的头像的圆角半径
 * 默认值为4，只有当头像形状设置为矩形时才会生效。
 */
@property (nonatomic, assign) CGFloat portraitImageViewCornerRadius;

/**
 * 全局的会话日期格式化
 */
@property (nonatomic, strong) NSString *globalConversationDateFormate;


/**
 * 全局的消息日期格式化
 */
@property (nonatomic, strong) NSString *globalMessageDateFormat;

/**
 * 头像边界，与左右边界的距离
 */
@property (nonatomic, assign) CGFloat globalConversationPortraitLeftMargin;
@property (nonatomic, assign) CGFloat globalConversationPortraitRightMargin;

/**
 * 消息角标显示的位置
 */
@property (nonatomic, assign) YMBadgeViewPosition badgePosition;


/**
 * 消息- 图片上传时的压缩比 0.5 - 1
 */
@property (nonatomic, assign) CGFloat imageMessageCompressRatio;

+ (instancetype)sharedConfig;
@end

NS_ASSUME_NONNULL_END
